package com.ruyuan.eshop.order.converter;

import com.ruyuan.eshop.fulfill.domain.event.OrderDeliveredEvent;
import com.ruyuan.eshop.fulfill.domain.event.OrderOutStockEvent;
import com.ruyuan.eshop.fulfill.domain.event.OrderSignedEvent;
import com.ruyuan.eshop.order.domain.dto.AfterFulfillDTO;
import org.mapstruct.Mapper;

/**
 * 儒猿课堂: http://www.ruyuan2020.com
 * @Author zhonghuashishan
 * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
 * @Version 1.0
 **/
@Mapper(componentModel = "spring")
public interface AfterFulfillDtoConverter {

    /**
     * 对象转换
     *
     * @param event 对象
     * @return 对象
     */
    AfterFulfillDTO convert(OrderOutStockEvent event);

    /**
     * 对象转换
     *
     * @param event 对象
     * @return 对象
     */
    AfterFulfillDTO convert(OrderDeliveredEvent event);

    /**
     * 对象转换
     *
     * @param event 对象
     * @return 对象
     */
    AfterFulfillDTO convert(OrderSignedEvent event);

}
